<?php


namespace EchoPHP\Foundation\Exception;

use Exception;
use RuntimeException;
use EchoPHP\Foundation\Exception\Contacts\HttpException as HttpExceptionContact;

class HttpException extends RuntimeException implements HttpExceptionContact {

    private $statusCode;
    private $headers;

    public function __construct(int $statusCode, string $message, Exception $previous = null, array $headers = [], int $code = 0) {
        $this->statusCode = $statusCode;
        $this->headers = $headers;

        parent::__construct($message, $code, $previous);
    }

    public function getStatusCode() {
        return $this->statusCode;
    }

    public function getHeaders() {
        return $this->headers;
    }

    public function setHeaders(array $headers = []) {
        $this->headers = $headers;
    }
}